home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 2 / AACD 2.iso / AACD / WebSites / MailingLists / AMOSLIST.0699 / 000131_nobody_Wed Jun 30 13:22:29 1999.msg < prev    next >
Internet Message Format  |  1999-07-02  |  4KB

  1. Received: from onelist.com (pop.onelist.com [209.207.164.233])
  2.     by osf1.gmu.edu (8.8.8/8.8.8) with SMTP id NAA26277
  3.     for <mcox4@osf1.gmu.edu>; Wed, 30 Jun 1999 13:22:29 -0400 (EDT)
  4. Received: (qmail 32668 invoked by alias); 30 Jun 1999 17:22:26 -0000
  5. Received: (qmail 32633 invoked from network); 30 Jun 1999 17:22:25 -0000
  6. Received: from unknown (HELO mail.iol.ie) (194.125.2.192) by pop.onelist.com with SMTP; 30 Jun 1999 17:22:25 -0000
  7. Received: from GPO1.GPO.iol.ie (GPO1.GPO.iol.ie [194.125.2.196]) by mail.iol.ie  Sendmail (v8.9.3) with ESMTP id SAA02916 for <amos-list@onelist.com>; Wed, 30 Jun 1999 18:22:25 +0100 (IST)
  8. Received: from iol.ie (dialup-0367.dublin.iol.ie [193.203.145.111]) by GPO1.GPO.iol.ie  Sendmail (v8.9.1) with ESMTP id SAA12929 for <amos-list@onelist.com>; Wed, 30 Jun 1999 18:22:23 +0100
  9. Sender: PaC@iol.ie
  10. Message-ID: <377A60EE.C00AF53F@iol.ie>
  11. Date: Wed, 30 Jun 1999 19:24:46 +0100
  12. From: Peter Cahill <cahill4@iol.ie>
  13. X-Mailer: Mozilla 4.07 [en] (X11; I; Linux 2.0.36 i586)
  14. To: amos-list@onelist.com
  15. References: <yam7848.262.2018591344@mail.online.no>
  16. Mailing-List: list amos-list@onelist.com; contact amos-list-owner@onelist.com
  17. Delivered-To: mailing list amos-list@onelist.com
  18. Precedence: bulk
  19. List-Unsubscribe: <mailto:amos-list-unsubscribe@ONElist.com>
  20. Reply-to: amos-list@onelist.com
  21. Mime-Version: 1.0
  22. Content-Type: text/plain; charset=iso-8859-1
  23. Content-Transfer-Encoding: 8bit
  24. Subject: Re: [amos-list] Seemingly easy task...
  25. Status: O
  26. X-Status: 
  27.  
  28. From: Peter Cahill <cahill4@iol.ie>
  29.  
  30. Arash Tavakoli wrote:
  31. > From: Arash Tavakoli <arash@online.no>
  32. > Hi everyone
  33. > Does anybody have a formula/algorithm for plotting perfect(ish) circles?
  34.  
  35. Theres 2 worthwhile ways of doing this. You could use
  36. Bresnhams midpoint algorithm, its fastest, and quite accurate.
  37. Or Sin/Cos combined.
  38.  
  39. I remember I searched the WWW for Bresnhams one a while back,
  40. only his line one seems to be floating around.
  41. To do it in Sin/Cos, you will need to also use a line algorithm,
  42. (use bresnhams, none other comes close, Ive got it if you want it)
  43. With it, (for a ellipse) you do a:
  44.  
  45. ' This presumes R1 and R2 is the radius, and you have a LINE procedure
  46. ' for your points array. and CX and CY are the center coords
  47.  
  48. PX = R1
  49. PY = R2
  50.  
  51. Degree
  52. For A = 0 To 90
  53.  
  54. S = Sin(A)
  55. C = Cos(A)
  56.  
  57. X = C * R1
  58. Y = S * R2
  59.  
  60. 'Get the points in a line between the points.
  61. LINE[CX+PX,CY+PY,CX+X,CY+Y]
  62. LINE[CX-PX,CY+PY,CX-X,CY+Y]
  63. LINE[CX+PX,CY-PY,CX+X,CY-Y]
  64. LINE[CX-PX,CY-PY,CX-X,CY-Y]
  65.  
  66. PX = X
  67. PY = Y
  68.  
  69. Next A
  70.  
  71. <end>
  72.  
  73. Of course, if you need circles only, you can make it
  74. calculate only to 45 degrees, and add in 4 more
  75. calls to the "LINE" procedure.
  76.  
  77. Its quite a while since I coded amos, so I dunno
  78. if this will work directly, it should :oP
  79.  
  80. These circles are not *PERFECTLY* round, but they do look
  81. it once the radius isnt somthing like 10000.
  82.  
  83. Or, for a more faster, more accurate routine, you should use 
  84. bresnhams algorithm, the above one isnt nearly as accurate
  85. as it. If you want Ill code it for you also in amos.
  86.  
  87. cya,
  88. -- 
  89.  
  90.                             .           .���.
  91.                         ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½ï¿½.:   :
  92.                        :         .-----------.
  93.                    Author of TGE |/�         |����.
  94.                        :      / \|           |    :
  95.                      .-------//� \         .-|    :
  96.                   .��| /� __/     \          |����'
  97.                   `��|   (_/       \         |�������.
  98.                      |    /         \        |       :
  99.                      |   /___________\-------'       :
  100.                      |   |email : cahill4@iol.ie     :
  101.                      `---'          :  :             :
  102.                        :            :  `�������������'
  103.                        `������������'
  104.  
  105. --------------------------- ONElist Sponsor ----------------------------
  106.  
  107. ONElist:  the best source for group communications.
  108. http://www.onelist.com
  109. Join a new list today!
  110.  
  111. ------------------------------------------------------------------------
  112. Official AMOS WWW: http://members.xoom.com/AmosFactory/front.html